/*
 * VotingHelper.h
 *
 *  Created on: Oct 15, 2011
 *      Author: kimi
 */

#ifndef VOTINGHELPER_H_
#define VOTINGHELPER_H_

#include "Model/Lista.h"
#include "Model/Votante.h"
#include "Model/Eleccion.h"
#include "Model/Distrito.h"
#include "Model/Candidato.h"

#include <vector>
#include <stdio.h>
#include <stdlib.h>
#include "Configuration/Properties.h"
#include "DataStructures/Block.h"
#include "DataStructures/Hash/HashRecord.h"
#include "DataStructures/Hash/ExtensibleHash.h"

using namespace std;

class VotingHelper {

public:

	VotingHelper(Properties *_props);
	~VotingHelper();
	vector<Lista> getListasParaEleccionYDistrito(unsigned long eleccionId,unsigned long distritoId);
	vector<Eleccion> getEleccionesDisponiblesParaVotante(Votante* votante);
	vector<Candidato> getCandidatosEnLista(unsigned long idLista);

	vector<Eleccion> getTodasLasElecciones();

	vector<Distrito> getDistritosParaEleccion(Eleccion e);


private:
	Properties* props;
};

#endif /* VOTINGHELPER_H_ */
